;;;; -*- Mode: LISP; Syntax: ANSI-Common-Lisp; Base: 10 -*-

;;;; *************************************************************************
;;;; FILE IDENTIFICATION
;;;;
;;;; Name:          package.lisp
;;;; Purpose:       Package file for audioscrobbler
;;;; Programmer:    Nicolas Lamirault <nicolas.lamirault@gmail.com>
;;;;
;;;; This file, part of , is Copyright (c) 2006 by Nicolas Lamirault
;;;;
;;;; cl-audioscrobbler users are granted the rights to distribute and use this software
;;;; as governed by the terms of the MIT License :
;;;; http://www.opensource.org/licenses/mit-license.php
;;;;
;;;; *************************************************************************


(defpackage :cl-audioscrobbler
  (:use :common-lisp)
  (:export

           ;; DAO

           #:user
           #:user-name
           #:user-url

           #:profile
           #:profile-id
           #:profile-registered
           #:profile-age
           #:profile-gender
           #:profile-country

           #:content
           #:content-name
           #:content-mbid
           #:content-url

           #:top-content
           #:top-content-playcount
           #:top-content-rank

           #:artist

           #:user-top-artist

           #:album

           #:user-top-album
           #:user-top-album-artist-name
           #:user-top-album-large
           #:user-top-album-medium
           #:user-top-album-small

           #:user-top-track
           #:user-top-track-artist-name

           #:neighbour
           #:neighbour-image
           #:neighbour-match

           #:friend
           #:friend-image
           #:friend-connection

           #:artist-related
           #:artist-related-image-small
           #:artist-related-image

           #:artist-top-album
           #:artist-top-album-reach

           #:artist-top-track
           #:artist-top-track-reach
           
           #:fan
           #:fan-image
           #:fan-weight

           #:tag
           #:tag-name
           #:tag-url
           #:tag-count

           #:track
           #:track-name
           #:track-reach
           #:track-url

           #:album-infos
           #:album-infos-reach
           #:album-infos-release-date
           #:album-info-tracks

           #:recent-track
           #:recent-track-artist
           #:recent-track-name
           #:recent-track-url
           #:recent-track-date

           #:top-artist
           #:top-artist-count
           #:top-artist-thumbnail
           #:top-artist-image

           #:top-album
           #:top-album-count
           #:top-album-large
           #:top-album-medium
           #:top-album-small

           #:top-track
           #:top-track-name
           #:top-track-url
           #:top-track-count
           #:top-track-thumbnail
           #:top-track-image

           #:taste-o-meter
           #:taste-o-meter-score
           #:taste-o-meter-first-user
           #:taste-o-meter-second-user
           #:taste-o-meter-second-artists

           ;; Album API

           #:get-album-informations

           ;; Artist API
 
           #:get-artist-related
           #:get-artist-top-albums
           #:get-artist-top-tracks
           #:get-artist-top-fans
           #:get-artist-top-tags

           ;; Tag API

           #:get-top-tags
           #:get-top-artists
           #:get-top-albums
           #:get-top-tracks

           ;; Track API

           #:get-track-fans
           #:get-track-tags

           ;; User API

           #:get-profile
           #:get-user-top-artists
           #:get-user-top-albums
           #:get-user-top-tracks
           #:get-user-neighbours
           #:get-user-friends
           #:get-user-top-tags
           #:get-user-recent-tracks
           #:get-user-taste-o-meter

           ;; Tools

           #:*print-audioscrobbler*

           #:*debug*

           ;; conditions

           #:audioscrobble-request-error
           #:audioscrobbler-protocol-error

           ;; Protocol

           #:last-fm-client
           #:last-fm-client-id
           #:last-fm-client-version
           #:last-fm-client-username
           #:last-fm-client-password
           #:last-fm-client-protocol
           #:make-client
           #:post-song

           )
  (:documentation "Common Lisp wrapper to Audioscrobber/Last.fm."))




